Field of the Invention
The present invention relates to a technology for exception processing at the time of a termination of a process of an information processing device.
Description of the Related Art
There are cases in a program executed by an information processing device in which an unexpected exception occurs due to an input of a value departing from a predetermined range, access violation of a memory, or the like. For example, there is a case in which data retained in a memory is lost when a process is abnormally terminated at the end during execution of a program. Data that has not been saved during an operation, such as log information or registry information, can vanish. As a countermeasure thereto, using a mechanism provided by an operation system (hereinafter, will also be referred to as an OS), an exception can be detected before a process is abnormally terminated and dump information of the process can be acquired. This is an effective measure for a programmer to investigate the cause of the exception and modify a program.
As an exception processing method used for an abnormal termination of a process in the related art, there is a method in which, when a certain module is loaded, a function that defines processing that is desired to be executed when an exception occurs is registered in an OS. The OS sends a signal to the registered function when the process detects an abnormality. For example, by registering a function that defines dump information acquisition processing in the OS, the dump information can be acquired. As a registration method performed when a signal is to be received when exception processing becomes necessary and thus the exception processing is to be executed, there is the method disclosed in Japanese Patent Laid-Open No. 7-334377. This method enables a burden of a programmer required for signal setting to be eased and exception processing to be surely and easily performed as intended. When control is transferred from one module to another module, a process of evacuating registered content of the exception processing and restoring the information that has been evacuated when control returns is performed.
In the technology disclosed in Japanese Patent Laid-Open No. 7-334377, there is no mention about calling control of a function when a signal is received and exception processing is executed. For example, exception processing performed when a program includes a module developed by a person other than a creator thereof (hereinafter, will also be referred to as the other module) is assumed. A general program is composed of a plurality of modules. As the scale of a program becomes larger, a larger number of persons or a larger number of groups are involved therein and thus there are few cases in which a single programmer or team implements all modules. With regard to the other module, there is a case of a program configured in conjunction with such a module that cannot be controlled because only a part of an interface thereof is disclosed, but the remaining part thereof is not disclosed. For this reason, when a function of a module that is not under control is called first at the time of exception processing, there can be a case in which a signal is not transmitted to a module that has been developed by the creator of the program due to the control of the module. In such a case, there is a possibility of dump information of only some modules being acquired.